#ifndef K_GLOBAL_H
#define K_GLOBAL_H
#pragma once

#include <cassert>
#include <cstddef>

#define KUnused(x) ((void)(x))

#if defined _DEBUG && !defined K_VERIFY_OFF
#   define KVerify(exp) kVerify(exp)
#else
#   define KVerify(exp) (exp)
#endif

using std::size_t;

template <class T>
inline const T &kVerify(const T &exp)
{
    assert(exp);
    return exp;
}

#endif // K_GLOBAL_H